Pribeh SQL prikazu (ProgressBar)

Otázka od: Robert Poncak

11. 9. 2002 12:37

Ahoj,
Mam dotaz, nepozna niekto nejaku komponentu, alebo nejaky sposob, akym dat
uzivatelovi aplikacie informaciu o priebehu SQL prikazu v podobe
ProgressBaru?
Napr. Dam select ktory prebieha 10 min, a aby bol uzivatel informovany kolko
uz prebehlo..
Dik

Odpovedá: Jan Sebelík

12. 9. 2002 3:32

Subject: Re: Pribeh SQL prikazu (ProgressBar)
> Odesílatel: Robert Poncak <delphi@zvlauto.sk>
> Mam dotaz, nepozna niekto nejaku komponentu, alebo nejaky sposob, akym dat
> uzivatelovi aplikacie informaciu o priebehu SQL prikazu v podobe
> ProgressBaru?

Obavam se, ze zalezi na databazi, zda mi prubeh zpracovani selectu na serveru
nejak sdeli. Ne kazda (spise maloktera) to dela.

V.Bodecek, ktery u nas skoli kurz "IB/IBX - pokrocile techniky" tam ma myslim
nejaky priklad, kdy postup selectu na serveru hlasi klientovi UDF, ktera se v
selectu vola.

Kdyz uz je select ("kurzor") na strane serveru hotov a data tecou na klienta,
pak je tu otazka, zda je DataSet nacita vsechna najednou nebo nejak po castech,
co ukazuje property RecordCount. To pak zalezi na typu pouziteho datasetu.
Docela jinak se chova TTable, TQuery a treba TClientDataSet. Viz tez nas kurz
"Delphi: pokrocile techniky, databazovy klient".

Honza
=========================================
= HAES - RNDr. Jan Sebelik
= http://www.haes.cz
= Skolici a konzultacni stredisko pro Delphi a Win32
= Vojtiskova 206
= 507 81 Lazne Belohrad
= tel. 0434 692 569 (0776 347735)
=========================================

Odpovedá: Robert Poncak

13. 9. 2002 8:08


No ja som zabudol dodat ze to je IB  
Ale ja by som potreboval v tom pomoct konkretne, nie odkaz na kurz...
Robo

> Odesílatel: Robert Poncak <delphi@zvlauto.sk>
> Mam dotaz, nepozna niekto nejaku komponentu, alebo nejaky sposob, akym dat
> uzivatelovi aplikacie informaciu o priebehu SQL prikazu v podobe
> ProgressBaru?

Obavam se, ze zalezi na databazi, zda mi prubeh zpracovani selectu na
serveru nejak sdeli. Ne kazda (spise maloktera) to dela.

V.Bodecek, ktery u nas skoli kurz "IB/IBX - pokrocile techniky" tam ma
myslim nejaky priklad, kdy postup selectu na serveru hlasi klientovi UDF,
ktera se v selectu vola.

Kdyz uz je select ("kurzor") na strane serveru hotov a data tecou na
klienta, pak je tu otazka, zda je DataSet nacita vsechna najednou nebo nejak
po castech, co ukazuje property RecordCount. To pak zalezi na typu pouziteho
datasetu. Docela jinak se chova TTable, TQuery a treba TClientDataSet. Viz
tez nas kurz "Delphi: pokrocile techniky, databazovy klient".

= HAES - RNDr. Jan Sebelik


Odpovedá: Roland Turcan

13. 9. 2002 20:29

<<< 13. 9. 2002 20:18 - Robert Poncak "delphi@zvlauto.sk" >>>
RP> Napr. Dam select ktory prebieha 10 min, a aby bol uzivatel informovany
kolko

Myslim si ani SQL server netusi kolko to bude trvat. On sa nemusi
starat len o teba, ale aj o inych v sieti. Bude asi problem zistit
tuto vec.
--
Best regards, TRoland
http://www.rotursoft.sk

Odpovedá: Jan Sebelík

14. 9. 2002 13:18

> Odesílatel: Robert Poncak <delphi@zvlauto.sk>
>> V.Bodecek, ktery u nas skoli kurz "IB/IBX - pokrocile techniky" tam ma
>> nejaky priklad, kdy postup selectu na serveru hlasi klientovi UDF,
>> ktera se v selectu vola.

> Ale ja by som potreboval v tom pomoct konkretne, nie odkaz na kurz...

Napis si UDF, ktera s v selectu zavola.
Zavola se tedy na kazdem radku selectu.
UDF se (treba pres sockety) pripoji na klienta a sdeli mu, ze byla zavolana,
tedy ze probehl dalsi radek selectu.

Konkretnejsi uz byt nemohu, ucelem teto konference je (podle meho soudu)
poskytnout tip na reseni problemu, nikoli reseni samotne. Promin.

Honza
=========================================
= HAES - RNDr. Jan Sebelik
= http://www.haes.cz
= Skolici a konzultacni stredisko pro Delphi a Win32
= Vojtiskova 206
= 507 81 Lazne Belohrad
= tel. 0434 692 569 (0776 347735)
=========================================

Odpovedá: Martin Kleiner

18. 9. 2002 8:00

Zavisi to na pouzite databazi.
Napriklad na ORACLE to zjistit lze pomoci selectu na V_$SESSION_LONGOPS.
Druha vec je ovsem problem se spustenim vice paralelnich SQL dotazu (v
threadech), pokud pristupujes k databazi pres BDE.

Martin Kleiner

> ----- Original Message -----
> From: "Robert Poncak" <delphi@zvlauto.sk>

> Mam dotaz, nepozna niekto nejaku komponentu, alebo nejaky sposob, akym dat
> uzivatelovi aplikacie informaciu o priebehu SQL prikazu v podobe
> ProgressBaru?
> Napr. Dam select ktory prebieha 10 min, a aby bol uzivatel informovany
kolko
> uz prebehlo..